How to Enhance a Superscalar Processor to Provide Hard Real-Time Capable In-Order SMT
نویسندگان
چکیده
This paper describes how a superscalar in-order processor must be modified to support Simultaneous Multithreading (SMT) such that time-predictability is preserved for hard real-time applications. For superscalar in-order architectures the calculation of the Worst Case Execution Time (WCET) is much easier and tighter than for out-of-order architectures. By a careful enhancement that completely isolates the threads, this capability can be perpetuated to an in-order SMT architecture. Our design goal is to minimise the WCET of the highest priority thread, while releasing as many resources as possible for the execution of concurrent non critical threads. The resultant processor executes hard real-time threads at the same speed as its singlethreaded ancestor, but idle issue slots are dynamically used by non critical threads. The modifications to enable SMT include a multithreaded fetch stage, an additional real-time issue stage, a wider register set, a prioritised multithreaded memory interface, split phase loads and interruptible microcodes for multi-cycle operations. The application of these enhancements is demonstrated by CarCore, a multithreaded embedded processor that implements the Infineon Tricore instruction set.
منابع مشابه
IPC Control for Multiple Real-Time Threads on an In-Order SMT Processor
This paper proposes an architecture for concurrent scheduling of hard, soft and non real-time threads in embedded systems. It is based on a superscalar in-order processor binary compatible to the Infineon TriCore. The architecture allows a tight static WCET analysis of hard real-time threads. To provide high performance anyway, the absence of speculative elements like branch prediction and out-...
متن کاملHard - Real - Time Multithreading : a Combined Microarchitectural and Scheduling Approach
EL-HAJ MAHMOUD, ALI AHMAD. Hard-Real-Time Multithreading: A Combined Microarchitectural and Scheduling Approach. (Under the direction of Dr. Eric Rotenberg). Simultaneous Multithreading (SMT) enables fine-grain resource sharing of a single superscalar processor among multiple tasks, improving cost-performance. However, SMT cannot be safely exploited in hard-real-time systems. These systems requ...
متن کاملEchtzeitfähige Ablaufplanung für simultan mehrfädige Prozessoren
This thesis presents the requirements for a Simultaneous Multithreaded (SMT) processor that supports hard real-time capabilities. The microarchitecture of a single threaded superscalar in-order processor is enhanced to support simultaneous multithreading with one completely isolated thread. This thread is executed as if it were the only thread in a single threaded system. Hence established meth...
متن کاملVirtual Multiprocessor: An Analyzable, High-Performance Microarchitecture for Real-Time Computing
The design of a real-time architecture is governed by a trade-off between analyzability necessary for real-time formalism and performance demanded by high-end embedded systems. We reconcile this trade-off with a novel Real-time Virtual Multiprocessor (RVMP). RVMP virtualizes a single in-order superscalar processor into multiple interference-free different-sized virtual processors. This provides...
متن کاملAn Effective Bypass Mechanism to Enhance Branch Predictor for SMT Processors
Unlike traditional superscalar processors, Simultaneous Multithreaded processor can explore both instruction level parallelism and thread level parallelism at the same time. With a same fetch width, SMT fetches instructions from a single thread not so deeply as in traditional superscalar processor. Meanwhile, all the instructions from different threads share the same Function Unites in SMT. All...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2010